package com.wicket.okrcalc.integration;

import com.wicket.okrcalc.common.ro.OkrResult;
import com.wicket.okrcalc.integration.dto.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
@FeignClient("calc")
public interface FwCalcEvaCalcClient {
/**
   * D4规划树执行计算公式(公共)
   */
    @PostMapping("/calc/evaCalc/implementPlanTreeExecutesCalcFormulaCom")
    public OkrResult<ImplementPlanTreeExecutesCalcFormulaComRespDto> implementPlanTreeExecutesCalcFormulaCom(ImplementPlanTreeExecutesCalcFormulaComReqDto reqDTO);
/**
   * D4执行分段查询目标父周期(公共)
   */
    @PostMapping("/calc/evaCalc/implementSegQueryTargetCycleCom")
    public OkrResult<ImplementSegQueryTargetCycleComRespDto> implementSegQueryTargetCycleCom(ImplementSegQueryTargetCycleComReqDto reqDTO);
/**
   * D4查询标准数据(开始时间小于结束时间大于等于)详情
   */
    @PostMapping("/calc/evaCalc/queryStandardDataStartLessEndBigEqualDetailCom")
    public OkrResult<QueryStandardDataStartLessEndBigEqualDetailComRespDto> queryStandardDataStartLessEndBigEqualDetailCom(QueryStandardDataStartLessEndBigEqualDetailComReqDto reqDTO);
/**
   * D4分析历史与当前工作周期标准数据(公共)
   */
    @PostMapping("/calc/evaCalc/analysisHistoryAndCurWorkCycleStandDardCom")
    public OkrResult<AnalysisHistoryAndCurWorkCycleStandDardComRespDto> analysisHistoryAndCurWorkCycleStandDardCom(AnalysisHistoryAndCurWorkCycleStandDardComReqDto reqDTO);
/**
   * D4分析历史与当前更新周期(公共)
   */
    @PostMapping("/calc/evaCalc/analysisHistoryAndCurUpdateCycleCom")
    public OkrResult<AnalysisHistoryAndCurUpdateCycleComRespDto> analysisHistoryAndCurUpdateCycleCom(AnalysisHistoryAndCurUpdateCycleComReqDto reqDTO);
/**
   * D4执行修正进度值/实际值/费用金额(公共)
   */
    @PostMapping("/calc/evaCalc/implementAdjustedProgressActualCostAmountCom")
    public OkrResult<ImplementAdjustedProgressActualCostAmountComRespDto> implementAdjustedProgressActualCostAmountCom(ImplementAdjustedProgressActualCostAmountComReqDto reqDTO);
/**
   * D4分析数据点计算场景(公共)
   */
    @PostMapping("/calc/evaCalc/analysisDataTypeCalcSceneCom")
    public OkrResult<AnalysisDataTypeCalcSceneComRespDto> analysisDataTypeCalcSceneCom(AnalysisDataTypeCalcSceneComReqDto reqDTO);
/**
   * D4执行检测汇报进度值(公共)
   */
    @PostMapping("/calc/evaCalc/implementCheckReportProgressValueCom")
    public OkrResult<ImplementCheckReportProgressValueComRespDto> implementCheckReportProgressValueCom(ImplementCheckReportProgressValueComReqDto reqDTO);
/**
   * D4分析增财务父子中类型(公共)
   */
    @PostMapping("/calc/evaCalc/analysisAddFinaceParentSubMidCycleTypeCom")
    public OkrResult<AnalysisAddFinaceParentSubMidCycleTypeComRespDto> analysisAddFinaceParentSubMidCycleTypeCom(AnalysisAddFinaceParentSubMidCycleTypeComReqDto reqDTO);
/**
   * D4查询被评对象目标周期详情(跨)
   */
    @PostMapping("/calc/evaCalc/queryEvaObjTargetCycleOverDetailCom")
    public OkrResult<QueryEvaObjTargetCycleOverDetailComRespDto> queryEvaObjTargetCycleOverDetailCom(QueryEvaObjTargetCycleOverDetailComReqDto reqDTO);
/**
   * D4计算因子达成度转得分(公共)
   */
    @PostMapping("/calc/evaCalc/calculateFactorReachToScoreCom")
    public OkrResult<CalculateFactorReachToScoreComRespDto> calculateFactorReachToScoreCom(CalculateFactorReachToScoreComReqDto reqDTO);
/**
   * D4执行修正填报标准数据是否最新(公共)
   */
    @PostMapping("/calc/evaCalc/implementAdjustedFillInStandardDataIsNewestCom")
    public OkrResult<ImplementAdjustedFillInStandardDataIsNewestComRespDto> implementAdjustedFillInStandardDataIsNewestCom(ImplementAdjustedFillInStandardDataIsNewestComReqDto reqDTO);
/**
   * D4执行修正并计算目标标准数据(公共)
   */
    @PostMapping("/calc/evaCalc/implementAdjustedAndCalcTargetStandardDataCom")
    public OkrResult<ImplementAdjustedAndCalcTargetStandardDataComRespDto> implementAdjustedAndCalcTargetStandardDataCom(ImplementAdjustedAndCalcTargetStandardDataComReqDto reqDTO);
/**
   * D4执行删标准数据(公共)
   */
    @PostMapping("/calc/evaCalc/implementDelStandardDataCom")
    public OkrResult<ImplementDelStandardDataComRespDto> implementDelStandardDataCom(ImplementDelStandardDataComReqDto reqDTO);
/**
   * D4非末级周期向左克隆标准数据(公共)
   */
    @PostMapping("/calc/evaCalc/implementNonFinalCycleLeftCloneStandardDataCom")
    public OkrResult<ImplementNonFinalCycleLeftCloneStandardDataComRespDto> implementNonFinalCycleLeftCloneStandardDataCom(ImplementNonFinalCycleLeftCloneStandardDataComReqDto reqDTO);
/**
   * D4判断当前周期是否存在标准数据(公共)
   */
    @PostMapping("/calc/evaCalc/judgeCurCycleIsHaveDataCom")
    public OkrResult<JudgeCurCycleIsHaveDataComRespDto> judgeCurCycleIsHaveDataCom(JudgeCurCycleIsHaveDataComReqDto reqDTO);
/**
   * D4查询标准数据by小于等于开始时间大于等于结束时间详情(公共)
   */
    @PostMapping("/calc/evaCalc/queryStandardDataBySmallStartAndBigEndDetailCom")
    public OkrResult<QueryStandardDataBySmallStartAndBigEndDetailComRespDto> queryStandardDataBySmallStartAndBigEndDetailCom(QueryStandardDataBySmallStartAndBigEndDetailComReqDto reqDTO);
/**
   * D4执行当前内容或兄弟计算修订异常场景(公共)
   */
    @PostMapping("/calc/evaCalc/implementCurConBrotherCalcReviseAnormalSceneCom")
    public OkrResult<ImplementCurConBrotherCalcReviseAnormalSceneComRespDto> implementCurConBrotherCalcReviseAnormalSceneCom(ImplementCurConBrotherCalcReviseAnormalSceneComReqDto reqDTO);
/**
   * D4执行父级内容向上计算(公共)
   */
    @PostMapping("/calc/evaCalc/implementParentConUpCalcCom")
    public OkrResult<ImplementParentConUpCalcComRespDto> implementParentConUpCalcCom(ImplementParentConUpCalcComReqDto reqDTO);
/**
   * D4执行循环计算不同周期标准数据异常或修订场景(公共)
   */
    @PostMapping("/calc/evaCalc/implementLoopCalcCyclesStandardDataCom")
    public OkrResult<ImplementLoopCalcCyclesStandardDataComRespDto> implementLoopCalcCyclesStandardDataCom(ImplementLoopCalcCyclesStandardDataComReqDto reqDTO);
/**
   * D4分析数据计算正常与异常场景(公共)
   */
    @PostMapping("/calc/evaCalc/analysisDataCalcNormalAndAmSceneCom")
    public OkrResult<AnalysisDataCalcNormalAndAmSceneComRespDto> analysisDataCalcNormalAndAmSceneCom(AnalysisDataCalcNormalAndAmSceneComReqDto reqDTO);
/**
   * D4执行计算克隆向右非末级周期标准数据(公共)
   */
    @PostMapping("/calc/evaCalc/implementCalcCurRightCycleStandardDataCom")
    public OkrResult<ImplementCalcCurRightCycleStandardDataComRespDto> implementCalcCurRightCycleStandardDataCom(ImplementCalcCurRightCycleStandardDataComReqDto reqDTO);
/**
   * D4执行MQ计算当前或祖先规划目标标准数据(公共)
   */
    @PostMapping("/calc/evaCalc/implementCalcCurOrParentTargetDataCom")
    public OkrResult<ImplementCalcCurOrParentTargetDataComRespDto> implementCalcCurOrParentTargetDataCom(ImplementCalcCurOrParentTargetDataComReqDto reqDTO);
/**
   * D4执行MQ计算当前及祖先规划目标标准数据(公共)
   */
    @PostMapping("/calc/evaCalc/implementCalcCurAndParentTargetDataCom")
    public OkrResult<ImplementCalcCurAndParentTargetDataComRespDto> implementCalcCurAndParentTargetDataCom(ImplementCalcCurAndParentTargetDataComReqDto reqDTO);
/**
   * D4执行MQ循环计算规划目标数据异常或修订场景(公共)
   */
    @PostMapping("/calc/evaCalc/implementLoopCalcCyclesTargetDataCom")
    public OkrResult<ImplementLoopCalcCyclesTargetDataComRespDto> implementLoopCalcCyclesTargetDataCom(ImplementLoopCalcCyclesTargetDataComReqDto reqDTO);
/**
   * D4执行MQ计算当前或兄弟内容异常场景(公共)
   */
    @PostMapping("/calc/evaCalc/implementCalcCurOrBrothersTargetDataCom")
    public OkrResult<ImplementCalcCurOrBrothersTargetDataComRespDto> implementCalcCurOrBrothersTargetDataCom(ImplementCalcCurOrBrothersTargetDataComReqDto reqDTO);
/**
   * D4执行MQ计算父级内容向上规划目标数据(公共)
   */
    @PostMapping("/calc/evaCalc/implementCalcParentTargetDataCom")
    public OkrResult<ImplementCalcParentTargetDataComRespDto> implementCalcParentTargetDataCom(ImplementCalcParentTargetDataComReqDto reqDTO);
/**
   * D4新增规划目标MQ队列数据(公共)
   */
    @PostMapping("/calc/evaCalc/addPlanTargetMqQueueCom")
    public OkrResult<AddPlanTargetMqQueueComRespDto> addPlanTargetMqQueueCom(AddPlanTargetMqQueueComReqDto reqDTO);
/**
   * D4新增规划财务MQ队列数据(公共)
   */
    @PostMapping("/calc/evaCalc/addPlanFinanceMqQueueCom")
    public OkrResult<AddPlanFinanceMqQueueComRespDto> addPlanFinanceMqQueueCom(AddPlanFinanceMqQueueComReqDto reqDTO);
/**
   * D4查询规划目标MQ队列数据列表(公共)
   */
    @PostMapping("/calc/evaCalc/queryPlanTargetMqQueueListCom")
    public OkrResult<QueryPlanTargetMqQueueListComRespDto> queryPlanTargetMqQueueListCom(QueryPlanTargetMqQueueListComReqDto reqDTO);
/**
   * D4查询规划财务MQ队列数据列表(公共)
   */
    @PostMapping("/calc/evaCalc/queryPlanFinanceMqQueueListCom")
    public OkrResult<QueryPlanFinanceMqQueueListComRespDto> queryPlanFinanceMqQueueListCom(QueryPlanFinanceMqQueueListComReqDto reqDTO);
/**
   * D4新增规划目标MQ-Redis队列数据(公共)
   */
    @PostMapping("/calc/evaCalc/addPlanTargetMqRedisQueueCom")
    public OkrResult<AddPlanTargetMqRedisQueueComRespDto> addPlanTargetMqRedisQueueCom(AddPlanTargetMqRedisQueueComReqDto reqDTO);
/**
   * D4新增规划财务MQ-Redis队列数据(公共)
   */
    @PostMapping("/calc/evaCalc/addFinancialPlannMqRedisQueueCom")
    public OkrResult<AddFinancialPlannMqRedisQueueComRespDto> addFinancialPlannMqRedisQueueCom(AddFinancialPlannMqRedisQueueComReqDto reqDTO);
  //
}
